package com.wkbb.basic.mapper;

import com.wkbb.common.dto.basic.VisitorInviteDto;
import com.wkbb.common.dto.basic.VisitorUserDto;
import com.wkbb.common.base.BaseMapper;
//import com.wkbb.basic.vo.ValidVisitorDeviceUserVo;
import io.lettuce.core.dynamic.annotation.Param;
import org.mapstruct.Mapper;

import java.util.List;
import java.util.Map;

/**
 * @author caohongdan
 * @date 2020/8/5
 * @description
 */
@Mapper
public interface VisitorMapper extends BaseMapper<VisitorInviteDto> {

    void addVisitor(VisitorInviteDto visitorInvite);

    void addVisitorUser(VisitorUserDto visitorUser);

    void updateVisitorUser(VisitorUserDto visitorUser);

    List<VisitorInviteDto> getVisitorList(Map<String, Object> params);

    List<VisitorUserDto> getVisitorUserInfo(@Param("id") Long id);

    void cancelVisitor(@Param("id") Long id);

    void cancelVisitorUser(@Param("id") Long id);

    VisitorInviteDto getVisitorInvite(@Param("id") Long id);

    VisitorUserDto getVisitUserDetails(@Param("id") Long id);
   // List<ValidVisitorDeviceUserVo> getValidVisitorUserList(Long orgId);

    List<VisitorInviteDto> getVisitorStatus();

    void updateVisitorStatus(Map<String, Object> params);

    void updateThirdVisitorInvite(VisitorInviteDto visitorInvite);
    void updateThirdVisitorUser(VisitorUserDto visitorUser);

    VisitorInviteDto getThirdVisitorInvite(@Param("extendArrangeNo") String extendArrangeNo);

    VisitorUserDto getThirdVisitorUserDetail(@Param("extendArrangeNo") String extendArrangeNo);

    List<VisitorUserDto> getVisitorUserAccess(VisitorUserDto visitorUser);

    List<VisitorUserDto> getVisitorUserAccessTime(@Param("userId") Long userId);

}
